/**
 * fs.createReadStream()创建一个可读的流
 * 
 */
// 导入 Node.js 的文件系统模块
const fs = require('fs');

// 创建一个可读流，用于读取 "凉州词.txt" 文件，指定每次读取的最大块大小为 25 字节
const read= fs.createReadStream("凉州词.txt", {highWaterMark: 26});
// 设置编码格式为 utf8，确保读取的文件内容被正确解码
read.setEncoding("utf8")   //设置编码格式
// 当流中有数据可读时，触发 'data' 事件，并在控制台打印数据块
read.on('data', function (chunk) {
    console.log(chunk.toString());
    // 暂停读取流，模拟处理数据的过程
    read.pause();
    // 等待 1 秒（1000 毫秒）后，恢复数据读取
    setTimeout(function () {
        read.resume();
    }, 1000);
});
// 当读取流结束时，触发 'close' 事件，并在控制台打印提示信息
read.on("close",function(){
    console.log("读取完毕");
})

/*
// 获取流的运行状态
const stream = require('stream');
const readable = new stream.Readable();
console.log(readable.isPaused());
readable.pause();
console.log(readable.isPaused());
*/
/*
//销毁流
const read = fs.createReadStream('凉州词.txt')
read.setEncoding('utf8');
read.on('data', function (chunk) {
    console.log(chunk.toString());
});
read.destroy();
*/

